/*
 * 
 * Libman
 * 
 * Daniel Kaufmann, Martin Lang, Simon Moosbrugger,
 * Stefan Mayer, Stephan Halbeisen
 * 
 */
package application.server;

import java.rmi.RemoteException;
import java.rmi.server.RemoteServer;
import java.rmi.server.ServerNotActiveException;

import javax.jms.JMSException;
import javax.naming.NamingException;

import application.controller.server.UseCaseControllerMediumReturn;
import application.exceptions.DataInconsistentException;
import application.exceptions.DatabaseException;
import application.exceptions.ExemplarNotFoundException;
import application.exceptions.InsufficientClientRightsException;
import application.exceptions.LoanNotFoundException;
import application.exceptions.SessionException;
import application.server.jms.MyProducer;

/**
 * The Class MediumReturnRemoteImpl.
 */
public class MediumReturnRemoteImpl extends AbstractRemoteImpl implements
		MediumReturnRemote {
	
	/** The Constant serialVersionUID. */
	private static final long serialVersionUID = 5403393249324051211L;
	
	/** The _controller. */
	private UseCaseControllerMediumReturn _controller;

	/**
	 * Instantiates a new medium return remote impl.
	 * 
	 * @throws RemoteException
	 *             the remote exception
	 */
	public MediumReturnRemoteImpl() throws RemoteException {
		super();
		_controller = new UseCaseControllerMediumReturn();
	}

	/* (non-Javadoc)
	 * @see application.server.MediumReturnRemote#returnExemplar(java.lang.String)
	 */
	@Override
	public void returnExemplar(String sessionId, String invNo) throws RemoteException,
			DataInconsistentException, LoanNotFoundException,
			DatabaseException, ExemplarNotFoundException, SessionException, InsufficientClientRightsException, ServerNotActiveException {
		_controller.returnExemplar(sessionId, "", invNo);
	}
}
